package com.heima.article.service;

import com.heima.article.dto.*;
import com.heima.article.entity.ApArticle;
import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.common.dto.ResponseResult;

/**
 * <p>
 * 文章信息表，存储已发布的文章 服务类
 * </p>
 *
 * @author lqw
 * @since 2022-06-23
 */
public interface IApArticleService extends IService<ApArticle> {
    /**
     * 存储已发布的文章
     * @param dto
     * @return
     */
    ResponseResult<Long> saveArticle(ArticleDto dto);

    /**
     * 加载展示文章
     * @param dto
     * @return
     */
    ResponseResult load(ArticleHomeDto dto);

    /**
     * 加载文章详情
     * @param dto
     * @return
     */
    ResponseResult loadArticleInfo(ArticleInfoDto dto);

    /**
     * 文章收藏
     * @param dto
     * @return
     */
    ResponseResult collect(CollectionBehaviorDto dto);

    /**
     * 加载文章行为
     * @param dto
     * @return
     */
    ResponseResult loadArticleBehavior(ArticleInfoDto dto);
}
